home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / 031-040 / amok37 / skrÄbel / sc_computer-mod-asm.zoo / Skräbel-src / sc_Computer-Mod.ASM / PreviousTreeNode.ASM < prev    next >
Assembly Source File  |  1990-03-19  |  1KB  |  64 lines

  1. ;(*****************************************************************************
  2. ;
  3. ;  :Program.       PreviousTreeNode.ASM
  4. ;  :Author.        Georg Brünsing
  5. ;  :Address.       Grechte 2, D-4156 Willich 3
  6. ;  :Phone.         02156/7534
  7. ;  :ShortCut.      gb
  8. ;  :Support.       -
  9. ;  :Version.       1.0
  10. ;  :Date.          20-Feb-89
  11. ;  :Copyright.     PD
  12. ;  :Language.      Assembler
  13. ;  :Translator.    Profimat / DATA BECKER
  14. ;  :Imports.       -
  15. ;  :Update.        -
  16. ;  :History.       -
  17. ;  :ModHistory.    -
  18. ;  :Contents.      Assembler Source für Skräbel
  19. ;  :Remark.        -
  20. ;  :Usage.         -
  21. ;
  22. ;*****************************************************************************)
  23.  
  24.  
  25.  
  26. ; AVLNode = RECORD
  27. Pred        = 0
  28. Links       = 4
  29. Rechts      = 8
  30. bal         = 12
  31. Len         = 14
  32. Inhalt      = 16
  33. AVLNodeSize = 20
  34.  
  35. PreviousTreeNode:
  36. ; Eingang in A0 = Node : AVLNodePtr
  37. ; Ausgang in D0 = Node : AVLNodePtr
  38. \Node       EQUR A0
  39. \Pred       EQUR A1
  40.    MOVE.L   Links(\Node) , D0
  41.    BNE.S    \IF_ELSE_1
  42. \LOOP:
  43.    MOVE.L   Pred(\Node) , D0
  44.    BEQ.S    \Ende
  45.    MOVEA.L  D0 , \Pred
  46.    TST.L    Links(\Pred)
  47.    BNE.S    \IF_ELSE_2
  48.    BRA.S    \Ende
  49. \IF_ELSE_2:
  50.    CMPA.L   Links(\Pred) , \Node
  51.    BNE.S    \Ende
  52.    MOVE.L   D0 , \Node
  53.    BRA.S    \LOOP
  54. \IF_ELSE_1:
  55.    MOVE.L   D0 , \Node
  56.    MOVE.L   Rechts(\Node) , D0
  57.    BNE.S    \IF_ELSE_1
  58.    MOVE.L   \Node , D0
  59. \Ende:
  60.    RTS
  61.  
  62.    END
  63.  
  64.